home *** CD-ROM | disk | FTP | other *** search
/ Hardcore Visual Basic 5.0 (2nd Edition) / Hardcore Visual Basic 5.0 - Second Edition (1997)(Microsoft Press).iso / Code / StackCol.cls < prev    next >
Text File  |  1997-06-14  |  864b  |  39 lines

  1. VERSION 1.0 CLASS
  2. BEGIN
  3.   MultiUse = -1  'True
  4. END
  5. Attribute VB_Name = "CStackCol"
  6. Attribute VB_GlobalNameSpace = False
  7. Attribute VB_Creatable = True
  8. Attribute VB_PredeclaredId = False
  9. Attribute VB_Exposed = False
  10. Option Explicit
  11.  
  12. ' CStackCol implements IStack
  13. Implements IStack
  14. Private stack As Collection
  15.  
  16. Private Sub Class_Initialize()
  17.     Set stack = New Collection
  18. End Sub
  19.  
  20. Private Sub IStack_Push(vArg As Variant)
  21.     stack.Add vArg
  22. End Sub
  23.  
  24. Private Function IStack_Pop() As Variant
  25.     If stack.Count Then
  26.         If IsObject(stack(stack.Count)) Then
  27.             Set IStack_Pop = stack(stack.Count)
  28.         Else
  29.             IStack_Pop = stack(stack.Count)
  30.         End If
  31.         stack.Remove stack.Count
  32.     End If
  33. End Function
  34.  
  35. Private Property Get IStack_Count() As Long
  36.     IStack_Count = stack.Count
  37. End Property
  38. '
  39.